package com.t.bricks.bussiness.db.mapper.tidings;

import java.util.Date;
import java.util.List;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import com.t.bricks.bussiness.db.entity.tidings.Tidings;

@Mapper
public interface TidingsMapper {
	
	/**
	 * 添加
	 * @Param tidings
	 * @return int
	 */
	int add(Tidings tidings);

	/**
	 * 清理双方都删除的数据
	 * @return int
	 */
	int clear();
	
	/**
	 * 搜索关键字对应的记录
	 * @param likeStr
	 * @param sUserId
	 * @return
	 */
	List<Tidings> search(
		@Param("likeStr") String likeStr,
		@Param("sUserId") String sUserId
	);
	
	/**
	 * 消息标记'删除'
	 * @param iId 记录编号
	 * @param isSsendee 是否接收者(不是接收者就是发送者)
	 * @param sUserId 操作用户
	 * @return
	 */
	int delSign(
		@Param("iId") Long iId,
		@Param("isSsendee") boolean isSsendee,
		@Param("sUserId") String sUserId
	);
	
	/**
	 * 查询指定用户指定时间的对话信息
	 * @param stDate 开始时间
	 * @param edDate 结束时间
	 * @param sUserId 用户编号(对应接收者或发送者)
	 * @return List<Tidings>
	 */
	List<Tidings> findByUserAndDate(
		@Param("stDate") Date stDate,
		@Param("edDate") Date edDate,
		@Param("sUserId") String sUserId
	);
	
}
